// 箭头函数

const person = {
  name: 'tom',
  sayHi: () => {
    console.log(this.name)
  },
  sayHiAsync: function () {
    // 使用普通函数作为回调时，普通函数在调用时this指向的是全局作用域
    // setTimeout(function() {
    //   console.log(this.name)
    // }, 1000)

    // 使用箭头函数作为回调，this会绑定当前函数的this
    setTimeout(() => {
      console.log(this.name)
    }, 1000)
  }
}

person.sayHi()
person.sayHiAsync()
